/**
 * 
 */
package edu.pw.treegrid.server.service;

import javax.sql.DataSource;

import edu.pw.treegrid.server.message.Request;
import edu.pw.treegrid.server.message.ResponseFetchChilds;
import edu.pw.treegrid.server.reportmodel.ReportSimpleColumn;

/** 
 * @author Piotrek
 */
public interface TreeGridService {
	/** 
	 * <!-- begin-UML-doc -->
	 * <p>
	 *     Pobiera wezly potomne danego wezla.
	 * </p>
	 * <p>
	 *     Obiekty tworza drzewo na podstawie zadanej hierarchii poprzez atrybuty.
	 * </p>
	 * <!-- end-UML-doc -->
	 * @param request Wiadomosc zawierajaca informacje o potrzebne do wykonania operacji.
	 * @param result Rezultat zwracany dla klienta.
	 * @generated "UML to Java (com.ibm.xtools.transform.uml2.java5.internal.UML2JavaTransform)"
	 */
	public void fetchChilds(Request request, ResponseFetchChilds result);
	
	public void setDataSource(DataSource dataSource);
	
	/**
	 * 
	 * @param rsc ReportSimpleColumn
	 * @return prawdziwy tytul kolumny. Jezeli kolumna jest dynamic to tytul jest pobierany jako rezultat zapytania SELECT.
	 */
	public String getColumnTitle(ReportSimpleColumn rsc);

}